As wireless devices become physically smaller and more complex, these wireless devices do little to reflect its state or present a direct affordance for programming and configuration. For example, consider the scenario of replacing a wireless light switch. Suppose that the wireless light switch is not only configured to turn on a specific set of outside lights when a physical switch is thrown, but also configured to activate lights when motion sensors detect a possible visitor in the darkness, and activate lights automatically based on the time of day. In this example, a fairly simple device contains significant programming and configuration information. In order to replace the wireless light switch, typically, this programming and configuration information is looked up and/or transferred from the wireless light switch to an intermediate device, such as a computer. The information is subsequently transferred from the intermediate device to the replacement switch. In some cases, this type of transfer may require the user transferring the state and configuration information to have specific knowledge about how to look-up and transfer this information and perform several time-consuming actions to replace the wireless light switch.
As another example, consider the simple task of replacing one wireless device with another wireless device. In contrast, in the current state of the art, consider the scenario in which an old personal digital assistant (PDA) is replaced with a new PDA. In order to transfer the state and configuration information of the old PDA into the new PDA, a user may be required to use an intermediate device (e.g., a computer) to program and configure the new PDA. Specifically, the old PDA is docked on a computer, the information from the old PDA is transferred to the computer using the keyboard and other input devices associated with the computer, and the old PDA is subsequently undocked. Further, the old PDA's state and how the old PDA was configured must be known to the user. Specifically, the configuration of the old PDA may include which other devices the old PDA communicates with and how this communication is performed. Upon determining this information, a user can effectively copy state and configuration information into the new PDA. Then, the new PDA is docked and the information is transferred to the new PDA. Thus, again, the user may be required to determine the specifics of each of the PDAs in order to effectively transfer the state and content from the old PDA to the new PDA.